<template>
  <div class="commentItem">
    <commentItem
      v-if="parent.parent"
      :parent="parent.parent"
      @reply="reply"
    ></commentItem>
    <div class="top">
      <div class="left">
        <span>{{ parent.user.nickname }}</span> &nbsp;&nbsp;&nbsp;
        <span>2分钟前</span>
      </div>
      <span @click="reply(parent)">回复</span>
    </div>
    <div class="bottom">{{ parent.content }}</div>
  </div>
</template>

<script>
export default {
  //   为组件定义一个name属性，用于递归组件用
  name: "commentItem",
  props: {
    //   接收父组件传递的上一级评论数据
    parent: {
      type: Object,
      require: true,
    },
  },
  methods: {
    // 点击嵌套的组件里面的回复，实现文本框弹出，发表评论，要实现子（commentItem.vue）传父（comment.vue）再父（comment.vue）传子（articleFooter.vue）
    // 点击回复，传递当前的评论对象，也就是parent
    reply(parent) {
      this.$emit("reply", parent);
    },
  },
};
</script>

<style lang="less" scoped>
.commentItem {
  border: 1px solid #ccc;
  padding: 5px;
  margin-top: 10px;
  .top {
    font-size: 12px;
    color: #aaa;
    display: flex;
    justify-content: space-between;
  }
  .bottom {
    font-size: 13px;
    line-height: 40px;
  }
}
</style>